The invention relates to a web server that enables embedding web pages with non-web page views.
Web browsers such as Netscape Navigator and Microsoft Internet Explorer are well known. Web browsers are software residing on a client (e.g., a personal computer). Via the browser, the client can communicate with a web server to enable access to and viewing of Hypertext Markup Language (HTML) documents. A web server typically includes a server (e.g., a UNIX- or Windows NT-based computer) connected to a network (e.g., the Internet, an intranet or other network), web server software configured with the host name of the server and the location of HTML objects on the servers and the HTML objects stored by that server.
In general operation, to access a web page, a user enters a request by specifying a uniform resource locator (URL) via the browser and hitting xe2x80x9cSubmitxe2x80x9d (or another function key) and the URL is sent to the web server using HTTP. The web server responds by locating the requested HTML document and returning it to the browser. The browser receives the HTML document, interprets the HTML codes, translates them into a web page, and displays the web page. In this way, web browsers enable access to the vast number of HTML documents via the World Wide Web, the Internet or intranets. HTML generally is well known. A primary purpose of HTML is to describe how to format the text (and other content) of a web page. HTML uses tags to indicate how text of a web page should be displayed and to specify the URL of objects to which a page is linked. HTML objects are commonly stored on a web server as standard text objects with a HTM or HTML extension. Linking is a powerful feature of HTML. One drawback with HTML links is that links are created by coding a page with HTML tags to link it to other objects (e.g., another document or a specific location within a document). Therefore creating web pages and links requires a working knowledge of HTML and the time required to write HTML code a create a page and any desired links. Editing an HTML page or a link typically requires using HTML to edit the original web page or link. One significant problem with HTML links is that if a web page (or other object is linked to it) is moved or deleted any links to that page or object needs to be manually changed or a xe2x80x9cfile not foundxe2x80x9d message will appear when a user clicks on the link.
One limitation of web browsers and web servers is that they were designed primarily to access HTML documents. Browsers typically cannot cause a web server to retrieve and return non-HTML documents. This inhibits a user from accessing non-HTML documents, objects or databases from a web browser. Non-HTML objects, for example, may include non-HTML documents, stored views for documents in a database, identification files stored in a user directory and many other types of objects. Views provide a convenient way to index a plurality of documents. Identification files may comprise information about a system user (e.g., electronic mail address, role, profile, etc.).
One example of a non-HTML database is Lotus Notes. Lotus Notes is a popular software system, rich with a number of well-known functions. These functions, however, are typically accessed via a client terminal (loaded with Lotus Notes client software) communicating with a server (loaded with Lotus Notes server software). Because Notes is not an HTML-based application, it has not been practical to access objects in a Notes database via a standard web browser.
Browsers/Web Servers typically do not permit attaching HTML or non-HTML objects to web pages. For example, a user retrieves a web page containing a reference to another web page. If the viewer wishes to view the web page referred to, that web page must be retrieved separately. This is a drawback.
Prior systems offer network users numerous functions. These functions, however, are offered only to client network users. For example, users of web browsers not in the client network cannot access objects within the client network. Prior systems offering a broad range of functions (e.g., Lotus Notes) do not permit non-client users the ability to utilize these functions. For example, Lotus Notes offers enterprise integration, an agent builder, enhanced linking, navigators, hierarchical folders, and others.
Enterprise integration allows access to all data within Notes. Notes exchanges data with various types of databases and systems to allow network users access to data in stored in numerous formats. Agent builders provide an interface that enables users to design and create agents for automating administrative and end-user tasks. Enhanced linking allows creating links to Notes databases, documents, web pages, etc. and preview linked documents before opening. Navigators provide a graphical process for finding documents or taking actions without maneuvering through multiple views or find menu commands. Hierarchical folders permit network users to create folders to store documents and messages. Notes agents may be used to automatically organize items within a folder.
These and other drawbacks exist.
An object of the invention is to overcome these and other drawbacks in existing systems.
Another object of the invention is to provide a web server that can respond to requests from a web browser for either HTML or non-HTML documents and return the requested documents to the web browser.
Another object of the invention is to enable non-HTML objects to be embedded within HTML objects.
According to one embodiment of the invention, the system comprises a novel web server for a client/server network, where the client side is equipped with a standard browser. The server comprises standard web server functionality (e.g., HTTP server), an HTML translator, a server side software (e.g., Lotus Notes server software) and a database (e.g., a Lotus Notes database). Significantly, the database does not need HTML objects. Preferably, the server receives a URL-based request from a browser via HTTP, the HTTP server and HTML translator determine the object (e.g., documents or databases) specified by the URL, retrieves that object, translates that object to HTML format and sends the HTML downloaded object to the client side browser for display.
According to one aspect of the invention, the system enables the server to embed non-HTML documents within a web page. The server comprises an interface module. The module comprises an HTML translator for translating non-HTML documents to HTML documents. Because non-HTML documents are translated to a format supported by a browser, the documents translated may be manipulated using the browser.